cmake_minimum_required(VERSION 3.20)

project(Export LANGUAGES CXX)

# 获取.cpp文件

add_library(${PROJECT_NAME} SHARED 
      ExportAPI.cpp
)

# 链接库
target_link_libraries(
  ${PROJECT_NAME}
  PRIVATE Exception
  PRIVATE Configuration
  PRIVATE FileSystem
  PRIVATE Logging
  PRIVATE Stacktrace

  PRIVATE DataStructure
  PRIVATE DBManager
)
target_link_libraries(
  ${PROJECT_NAME} PRIVATE
  NH5Export # 链接静态库
  VTKExport # 链接静态库
)
# 导入Boost库
# import_boost()

# 指定字符集编码
target_compile_options(${PROJECT_NAME} PRIVATE -finput-charset=UTF-8
                                               -fexec-charset=UTF-8)

# 预定义宏
target_compile_definitions(${PROJECT_NAME} PRIVATE EXPORTING_EXPORT)

# 安装设置
install(
  TARGETS ${PROJECT_NAME}
  ARCHIVE DESTINATION lib
  RUNTIME DESTINATION bin)

# Header files install
install(
  DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  DESTINATION include/Export/
  FILES_MATCHING
  PATTERN "*.h")
